Dynamic awareness involving location

ABSTRACT

A system for dynamic content delivery is provided. The system includes a control component to determine location, preferences, and state of a user. A delivery component dynamically selects and provides content to the user as a function of the user&#39;s location, preferences, and state.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.11/771,369, filed on Jun. 29, 2007, and entitled “DYNAMIC AWARENESSINVOLVING LOCATION”, the entirety of which is incorporated herein byreference.

BACKGROUND

Conventional experiences with devices or machines that people come incontact with at differing locations are such that devices are oftenindividualized and contain no corporate knowledge of prior experiencesor situational data. For instance, if one were standing at a point inspace such as overlooking some scenery, he or she may be completelyunaware of the prior experiences or relevant information that isassociated with the particular location.

A common experience for the modern age is the proliferation of hand helddevices where people are often seen in their cars or as they walklistening to music or in many cases talking on their cell phones. Onecommon music experience is the personal music device that allows one tostore an abundance of music on a miniaturized hard drive. There areseveral competing technologies for the listener. For example, somedevices were designed to be a music player only, where the interface,size, storage ability, and general design all enhance this function.Other type devices were designed to be a music/movie/game player. Themusic only type devices tend to require using a proprietary library thatcan be both an advantage and a disadvantage. For instance, theproprietary systems tend to do a good job ripping CDs, creating playlists, and organizing tunes. However, one is also locked into therespective proprietary program. This basically implies that a thirdparty company controls one's music library, controls what can and cannotbe listened to, and can even control how long one can listen.

In the alternative music/game players, direct access is given to thedevice's memory content. One can even remove memory and alter thecontent via an external reader, or swap it out with another memorystick. The downside is that usage is more technologically complex tofigure out how to put music onto the memory stick. For instance, if MP3files are employed, it's a matter of dragging-and-dropping the filesinto the right folder. However, if one wants to rip a CD and upload itto the player, they will have to either know a little about computermemories or buy a program. Some people would rather have more control,and whereas others may prefer the computer to do the thinking for them.

Other than provide a platform to listen to music or receive some othertype of media such as movies or games, current devices lack any type ofcontext above and beyond the music that is pre-selected by the user.Thus, additional information or experience is not provided to the userthat may in fact enhance the current experience. For instance, whenlistening to a current song at a given location, the user may becompletely unaware that there is some connection to the present locationin view of the given song. Not only do current music devices lack asense of location, but they also do not tie into any data above andbeyond that predetermined by the respective user. Such devices arelacking in that functionality is missing that may be of considerablevalue to users.

The most common type of device is the cell phone which has addedfunctionality as time goes by. Original cell phones were bulky and hadlow battery storage capabilities. Modern phones in addition to providingexcellent voice/communications capabilities also include other functionssuch as cameras, keypads, textual capabilities, and Internetconnections. Some phones include the ability to locate where a givenuser is. Unfortunately, as is the case with music only devices, theability to locate is not tied in with any additional context that may beof valuable assistance to the user. For example, users may rate a cellphone for Sound Quality, Speakerphone, Ring tone Volume, Strength ofSignal Reception, Keypad, Display, Selection of Features, TextMessaging, and Camera yet not question the type of data features thatmay be missing from the experience. It may be nice to know that one islocated in a suburb west of the city but it may be entirely useful toknow contextual data associated with the suburb.

Still yet other type of devices include person digital assistants thatoften combine features from cell phones, music players, and otherdevices. These devices do not make up for the noted deficiencies ofmobile phones and music players however.

SUMMARY

The following presents a simplified summary in order to provide a basicunderstanding of some aspects described herein. This summary is not anextensive overview nor is intended to identify key/critical elements orto delineate the scope of the various aspects described herein. Its solepurpose is to present some concepts in a simplified form as a prelude tothe more detailed description that is presented later.

Communications and location-enabled components provide for dynamicallyincreasing one's awareness in view of a given location. Location-basedtechnologies can be employed as a trigger to dynamically deliverinformation to users when they come within vicinity of a given location.Users can exploit past experiences of other users that are associatedwith a given location or dynamically receive information that may be ofsome utility in view of the location and/or in view of the location at aparticular point in time. For example, this could include providing adynamic bumper similar to a clip from old time radio where an idea ispushed at a particular point in time and in view of the given location.In another example, this can include sharing a play list, providingcontext relevant to music someone hears, or one's location when arelated song or information is playing. One particular example includesif a person walked past the field that inspired the song “StrawberryFields Forever” by John Lennon, a story or song could be played when auser came in vicinity of the location. This could include bumpinginformation via localized kiosks or locating users via a device such asa cell phone and pushing localized content to the device. Prior userexperiences can also be cached and pushed so users can share experienceswhen they arrive at common locations.

To the accomplishment of the foregoing and related ends, certainillustrative aspects are described herein in connection with thefollowing description and the annexed drawings. These aspects areindicative of various ways which can be practiced, all of which areintended to be covered herein. Other advantages and novel features maybecome apparent from the following detailed description when consideredin conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic block diagram illustrating a dynamic awarenesssystem to facilitate data exchange.

FIG. 2 is a diagram that illustrates an example user profile to controllocation information exchange.

FIG. 3 is a diagram that illustrates context pushing of data based onlocation and profile information.

FIG. 4 illustrates dynamic bumpers that provide location basedinformation.

FIG. 5 illustrates input media for storing user experience data.

FIG. 6 illustrates location based feedback for dynamically alteringevent outcomes.

FIG. 7 illustrates local capture of data that is analyzed to presentrelated location based information.

FIG. 8 illustrates building dynamic networks to share information basedon location.

FIG. 9 illustrates example location detection components.

FIG. 10 illustrates a methodology to present dynamic data to users basedupon a detected location.

FIG. 11 is a schematic block diagram illustrating a suitable operatingenvironment.

FIG. 12 is a schematic block diagram of a sample-computing environment.

DETAILED DESCRIPTION

Systems and methods are provided for delivering dynamic data content inview of a person's detected location and context. In one aspect, asystem for dynamic content delivery is provided. The system includes acontrol component to determine location, preferences, and state of auser. A delivery component dynamically selects and provides content tothe user as a function of the user's location, preferences, and state.Location components can be employed to detect a user's location wheremobile devices and/or localized delivery systems can deliver dynamiccontent to the user based on the detected location.

As used in this application, the terms “component,” “location,”“profile,” “database,” and the like are intended to refer to acomputer-related entity, either hardware, a combination of hardware andsoftware, software, or software in execution. For example, a componentmay be, but is not limited to being, a process running on a processor, aprocessor, an object, an executable, a thread of execution, a program,and/or a computer. By way of illustration, both an application runningon a server and the server can be a component. One or more componentsmay reside within a process and/or thread of execution and a componentmay be localized on one computer and/or distributed between two or morecomputers. Also, these components can execute from various computerreadable media having various data structures stored thereon. Thecomponents may communicate via local and/or remote processes such as inaccordance with a signal having one or more data packets (e.g., datafrom one component interacting with another component in a local system,distributed system, and/or across a network such as the Internet withother systems via the signal).

Referring initially to FIG. 1, a data awareness system 100 isillustrated to facilitate dynamic data exchange with users in view of agiven location. The system 100 includes a database 110 (or databases)that stores information related to a given location. Such informationcan be stored locally in a local store and/or retrieved from remotelocations such as over the Internet. A content delivery component 120(or delivery component) accesses the database 110 and provides relevantor contextual data to a user via device 130. It is noted that the device130 is shown in a general sense in that the device could be a mobilewireless device that communicates with the delivery component 120 and/orcould be part of a local device such as a kiosk display or audio speakerfor example. Based upon a detected location, and one or more controlsthat are selected in a data and controls component 140 (or controlscomponent), information from the database 110 is presented to the uservia the device 130. For example, if the device 130 were detected to bewithin range of a given location, information from the database 110 canbe provided upon such detection.

Location detection can include local detection components 150 such assensors that detect a user's proximity and/or detect from moresophisticated components such as a GPS system as will be described inmore detail below. A user profile (described below with respect to FIG.2) can be entered and updated via the controls component 140, where thecontrols determine if potential information that is triggered by thedetected location should in fact be sent to the user at a given time. Inessence, users can tailor their experiences as desired via the controlscomponent 140. Also, in reference to other aspects, users cancommunicate data back to the location database 110 to update thedatabase in view of their respective experiences. In this manner,location data is constantly being updated with fresh data for futureusers to receive when they have been detected in vicinity of the givenlocation.

In general, the system 100 allows for dynamically increasing one'sawareness in view of a given location. As can be appreciated, more thanone device may be detected within vicinity of a given location and canreceive similar or different data from the database 110. Informationexchange can include providing a dynamic bumper similar to a clip fromold time radio where an idea is pushed at a particular point in time andin view of the detected location. This could include sharing a playlist, providing context relevant to music someone hears, or one'slocation when a related song or information is playing. Information canbe bumped via localized kiosks or locating users via the device 130 suchas a cell phone and pushing localized content to the device. Prior userexperiences can also be cached at the database 110 and pushed so userscan share experiences when they arrive at common locations.

Other location based dynamics include just in time mash-ups where moviesor games are created and/or altered dynamically. This can includesurveying the mood of a crowd via voting schemes and altering thecontent that is being presented at a given location. Thus, users can beinvited to share a collective experience where they are invited to sharerankings of a particular topic, event, game, disc jockey and so forth.Context sensitive information retrieval can employ whatever profileinformation about where users are, what users are doing, profiles,things on a list of likes and dislikes and so forth. This can includepulling information such as a list at grocery store or pullinginformation relating to someone that a person is talking to (such astheir name) and provide some context for this person. As a person iswalking in a city for example, data can be pushed relating to, e.g.,museums they are in proximity to, attractions, features, and dataregarding past user experiences with those locations. Thus, not onlycould one be told they are close to a famous restaurant but they couldbe provided with data and suggestion of others that have also visited.This could include matching profile information with other similarprofiles in order to retrieve more relevant information.

In a device capture sense, if one were to take a picture (or captureaudio as described below), connections could be made to localized orremote databases 110 that can pull information related to the givenpicture and again community data can be associated with the respectivedata capture. Beacon signals can be sent out to allow dynamic buildingof physical networks on the fly to allow people to collaborate near agiven location and according to similar experiences. The respectiveexamples described herein will now be described in more detail belowwith respect to FIGS. 2-10. In another aspect, the system 100 can beemployed as a location based information system. This includes means fordetecting a user's location within a predetermined area (locationcomponents 150) and means for analyzing a profile associated with theuser (controls component 140). The system can also include means forcommunicating information to the user (delivery component 120) based inpart on the location and the profile.

Referring now to FIG. 2, an example user profile 200 is illustrated tocontrol location information exchange. In general, the profile 200allows users to control the types and frequency at which information maybe provided to them. Some users may prefer to receive all informationassociated with a given location when they are detected within proximitythereof whereas others may desire information under more controlled ornarrow circumstances. The profile 200 allows users to select and/ordefine options or preferences for receiving data. At 210, interruptionpreferences can be defined or selected. For example, restrictions can beplaced on the times when location data can be sent to a user's device.Such examples include only sending location data during lunch hour, orrestricting the data until the user has indicated they are on vacation.This could also include tailoring signals to indicate the presence ofdata but not giving a full data display or output. For example, the usermay see a flashing icon or hear a beep indicating the presence of dataand they could select further controls to see or experience the fulldata output at a given location.

Proceeding to 220, the user may indicate recreational preferences. Forinstance, the user may indicate that they jog at certain times of dayand do not desire to receive data at those times. In another context,the user may indicate they are sports enthusiasts and desire to hearlocation information relating to sports but perhaps not other locationdata. As can be appreciated, recreational constraints can be placed overa plurality of differing circumstances. At 230, artistic preferences maybe defined. This may include indicating movie, musical, or otherartistic genres a user may be interested in such that when a user is inthe presence of a given location related to those particular interests,information can be presented at that time. For example, a userinterested in rock & roll may not desire to know about country & westerninformation when visiting Nashville but may want to be informed whenthere is something about Elvis Presley that should be noted about agiven location. Thus, if an old warehouse was passed where Elvis wrotehis first hit, then the rock & roll enthusiast might be apprised of suchinformation as they passed in vicinity of the respective building. Otheraspects could include having security preferences, limitations orsettings at 240 such that when a user is in a given location some/moreinformation may be exchanged with others than when in some otherlocation. This can include privacy settings to control how much isrevealed with respect to a given user or location.

Proceeding to 250, time preferences can be entered. This can includeabsolute time information such as only provide information updates onweekends, or do not show information during lunch hour, or other timeindication. Ranges can be specified such as please provide locationinformation between 2:00 and 4:00 each afternoon. This can also includecalendar information and other data that can be associated with time ordates in some manner. At 260, geographical interests can be indicated totailor how location information is presented to the user. For instance,some users may not want to be bothered while at work in the city yetprefer their data in more rural locations. Whether a location is ruralor not can be defined by available demographics or by user-declared fiatif desired. Databases and interfaces can be provided to allow aplurality of differing designations for when and/or where to receiverespective information. This could include mountainous designations,water locations, state designations, and/or country designations forexample.

Proceeding to 270, general settings and overrides can be provided. Thesesettings at 270 allow users to override what they generally use toscreen information. For example, during normal work weeks, users mayscreen out almost all location based data that may be available to themvia the profile 200. When they arrive somewhere on vacation for exampleand possibly desirous of learning more about a new location, the usermay want to simply disable one or more of the controls via the generalsettings and overrides 270. At 280, miscellaneous controls 280 can beprovided. These can include if then constructs or alternative languagesfor more precisely controlling if and when available data detected for alocation is pushed to a user.

The user profile 200 can be updated in several instances and likely viaa user interface that is served from a remote server or on a respectivemobile device itself. This can include a Graphical User Interface (GUI)to interact with the user or other components such as any type ofapplication that sends, retrieves, processes, and/or manipulates data,receives, displays, formats, and/or communicates data, and/orfacilitates operation of the system. For example, such interfaces canalso be associated with an engine, server, client, editor tool or webbrowser although other type applications can be utilized.

The GUI can include a display having one or more display objects (notshown) for manipulating the profile 200 including such aspects asconfigurable icons, buttons, sliders, input boxes, selection options,menus, tabs and so forth having multiple configurable dimensions,shapes, colors, text, data and sounds to facilitate operations with theprofile and/or the device. In addition, the GUI can also include aplurality of other inputs or controls for adjusting, manipulating, andconfiguring one or more aspects. This can include receiving usercommands from a mouse, keyboard, speech input, web site, remote webservice and/or other device such as a camera or video input to affect ormodify operations of the GUI. For example, in addition to providing dragand drop operations, speech or facial recognition technologies can beemployed to control when or how data is presented to the user. Theprofile 200 can be updated and stored in substantially any formatalthough formats such as XML may be employed to capture user controlsand instructions.

Turning to FIG. 3, context pushing of data based on location and profileinformation is illustrated at 300. Such location information can beprovided to users based on several factors. At 310, location data ispushed to people based on spatial relationships to a location orstructure such as a building. For example, as one walked past a movietheater and their location was detected, a movie review or otherinformation relating to the theater could be directed to the user. Othertype venues and locations include museums that can direct informationabout the contents of the museum or other notable information such asupcoming exhibits or displays. When located near a restaurant or otherbusiness, users can receive information relating to the menu forexample, nightly specials, or special discounts that may be available atthat point in time.

As noted above however, users may chose to regulate or control the typeof information they receive based upon settings they have made in theirrespective profiles. Other type buildings that may include clubs orentertainment venues that may be of interest to a particular user thathappens upon a given location. In more outdoors settings, locationdetection can trigger information to the user based upon a given sceneor setting that the user may visit. For example, a scenic view in theGrand Canyon may trigger a story about Butch Cassidy and the SundanceKid and who they hid out at the respective scene or vista in the past.Another story may include how the Colorado River created an unusualgeologic formation. As can be appreciated, data can be pushed withrespect to substantially any location or structure.

Proceeding to 320, information can be exchanged when people are detectedin proximity to other people or users. In these instances, profiles andprivacy considerations may exclude some users from receiving informationfrom other users. However, when someone detects the presence of atrusted user, then information regarding the other user can beexchanged. This can include identity information. Thus, queues can begiven that identify the other trusted party such that if someone were toapproach another user, their identity or name could be provided as amemory aid. Personal information could be exchanged at 320 such as thetype of mood someone were presently in or some information like recentlyretired or on vacation the past three weeks. Generally, users can updatetheir profiles with audio clips or other media data such as text datathat provide personal information that may be shared when encounteringother users in proximity of a given location.

At 330, another type of information exchange may include profilematching and associated data exchange. In this example, the user may notknow the other user they are in proximity with but based on receivedprofile information and in view of the location of the other user, thatuser may be willing to exchange information with the other user. Forinstance, when observing Niagara Falls, a user may send out via alocalized beacon signal to all users within 100 yards of themselves ageneralized question about some event they are observing, for examplewitnessing some natural event that may be presently occurring. If otherusers having similar profiles are alerted, they might be able to provideadditional information at the location. This can include present or pastsense information collected by the user. Again, privacy considerationscan include or exclude people from actually knowing who they are talkingto depending on the comfort level and profile settings of the respectiveuser. Thus, based on a given profile and preference settings, users candynamically exchange data with other users in a given location or area,where identities can be made aware or kept in private depending onprofile settings.

Referring to FIG. 4, dynamic bumpers 400 for exchanging location basedlocation based information are illustrated. Dynamic bumpers 400 includemedia ports 410 that provide one or more media exchange points toreceive data. These can include audio bumpers to hear differentpresentations, video or picture bumpers for visual data, or other stylesensory outputs such as textures or scents that can be automaticallychanged based on differing circumstances and times. For example, themedia bumpers 410 could include a plurality of messages that arebroadcast over speakers as users come in proximity to a location.Perhaps in the morning one message is given, whereas a different messageis provided in the afternoon and the evenings. In another example, avideo display provided at a hand held device or output at a localizedkiosk display can bump from one type of message to another based ondetected circumstances, times, or substantially any condition. Forexample, based on a given users profile, one type of information may bebumped at 400 versus another type. For example, at one location,information may be provided that Neil Young crafted a famous song whileoverlooking a selected mountain range. For someone whose profileindicated an interest in this genre, a song could be played when inproximity of the range or other factual information could be pushed. Inother cases where users were not so inclined to care about music ingeneral or folk/rock specifically, the information could be withheldentirely. In yet another example, if a user were visiting a locationsuch as in the dry time of year, scents could be automatically bumped tothe user to indicate an aroma during the rainy season of the year.Similarly, vibrations or other sensory perceptions could be induced tosimulate natural phenomena such as earth quake vibrations or flash floodsounds. Substantially any type of sensory output can be pushed at 400based upon a detected location of the user.

Turning to FIG. 5, input media 500 is illustrated for storing userexperience data. As noted above, location based data can includepredetermined data that has been associated with a location but can alsoinclude previous user's experiences with a location or area. The inputmedia 500 can be interfaced via a device user interface or an interfaceserved locally, or an interface served to the device that can be an XMLfile or other format. The input media 500 can capture user's impressionsof a given location that can be stored and experienced by other users.It is noted that such media 500 can be associated with substantially anylocation if specifically tagged for the location. For instance, if auser were out in the wilderness and tagged a particular GPS coordinate,a user file could be stored in a global database. When some other usercame within proximity of the coordinates, the data stored in the globaldatabase could be pushed via wireless signals to the device.

As shown, the input media 500 includes several inputs for recording userexperiences that can be shared with subsequent users at a givenlocation. At 510, ranking fields can include survey information providedby the respective users showing there likes or dislikes of a givenlocation. At 520, comment fields include generalized feedback from usersregarding their impressions. This can include textual data, audio data,video data or combinations thereof. Proceeding to 530, question fieldscan provide data regarding answers to predetermined questions providedabout a location. At 540, profile fields can share information regardingthe types of users who have provided data. In some cases, this mayinclude personal or identity information if users were so inclined toenter such data. At 550, other recommendations can be provided by users.This may include information that supplements given locationinformation. For example, providing information that indicated that 200yards upstream a beautiful waterfall was discovered and the like. At560, tag information can be provided. As noted above, tags may storespecific GPS or other location information that is then tied toinformation stored on a globally accessible database. Such tags 560 canthen be employed by other users to acquire data regarding a specificlocation and often places that are not associated with mainstreamtourist destinations.

Referring to FIG. 6, a system 600 illustrates location based feedbackfor dynamically altering event outcomes. The system 600 relates todynamic situations and locations such as movie theaters, concerts,plays, political events, DJ events, and so forth that can be dynamicallyaltered or adjusted based upon feedback generated by users withinvicinity of a given location. The system 600 includes one or moreranking devices which could be provided at an event or can be electronicinterfaces that are received at wireless devices such as cell phones,PDA's or music devices, for example. Data generated by the rankingdevices 610 can be gathered and analyzed by a collection component 620where the collective mood of a group at the location can be determined.

Based on the determined mood or other criteria at 620, feedback 630 canbe presented to the organizers or sponsors of an event wherepresentations at the event can be changed or altered. For example, a DJoperating a local night club may receive feedback 630 from a pluralityof users that disco music is preferred over some other alternativeformat. Other indications may include letting the DJ know that music isbeing played too loudly or not loudly enough for example. In a politicalsetting example, candidates at a debate can receive immediate feedback630 on their responses and alter further responses based on suchfeedback if desired. As can be appreciated, substantially any type ofevent that is open to the public can employ audience feedback 630 fromthe venue to dynamically alter a given presentation. Marketers can alsoemploy feedback 630 to adjust sales offerings to the group if desired.Based on profile information however, some users may not be enabled toreceive such solicitations however.

Referring to FIG. 7, a system 700 illustrates local capture of data thatis analyzed to present related location based information. In thisaspect, the system 700 allows one to capture information via a device at710. This could be a cell phone or other device that captures audiodata, picture data, video data, or other type of sensory data at 720.Based on the respective capture of data at 710, an analyzer 730 receivesthe data and determines if there is any related location informationassociated with the capture. If data is available via the analyzer 730determining related data, the available data is provided to the user at740. For example, the device 710 may capture an image of a statute orplant at a given location. The image is then transmitted to the analyzer730 either at the location or associated with the location via remoteprocesses.

If the analyzer 730 detects that the plant or the statue is similar toother images previously stored, then location data is pushed relating tothe image at 740. For instance, an image taken of a statue of ThomasJefferson could be transmitted to the analyzer where further informationrelating thereto could be provided. This could include why Jefferson wasso honored at this particular location and who was involved withgenerating such honors. With respect to a plant or tree from thelocation, an identity could be made. Perhaps a mushroom or other toxicplant could be identified. As can be appreciated, substantially anyimage can be analyzed per a given location. In another example, an audioclip of a bird singing could be analyzed and identified per therespective location. If other type sensors were employed such asanalyzing scents for examples, other type of identifications andinformation could be pushed to the user based on the location and theidentified sensory input.

Referring now to FIG. 8, a system 800 illustrates building dynamicnetworks to share information based on location. In this example, localbeacons 804 are employed to for a network between devices 1 though Nillustrated at 810 though 830. The local beacons 804 can be localizedwireless signals for example that are broadcast and employed by thedevices to form the local network. From the local network that isformed, information can be shared and exchanged regarding people orother data surrounding the location. Similar to above, profile data canbe used to control the amount and type of data exchanged betweendevices. This can include policy or security code settings to facilitateprivacy for a given user. In addition to the local beacons 804 beingtransmitted to form the network, the devices 810-830 can transmitsignals or codes that can be used to construct a respective network. Forexample, a code could be sent out looking for other like minded peopleor profiles. Devices responding to such codes could then be employed toform the localized network.

After the network has been formed, substantially any type of informationcan be exchanged between devices 810-830. This can include voice, video,picture or other media exchanges. Beyond localized social networks suchas what may be formed in a club atmosphere, the networks may be usefulto be formed in disaster or other type of emergency settings. Forinstance, during an emergency, some users may choose to remove anyprofile restrictions they have for receiving local data and globallydecide to communicate with other users similarly situated at thelocation.

Referring to FIG. 9, example location detection components 900 areillustrated. In one example, global positioning systems (GPS) can beemployed to determine location of a respective user. When the locationhas been determined, subsequent information can be pushed to the user inview of the respective location as previously described. In general, theGlobal Positioning System (GPS) is currently the only fully functionalGlobal Navigation Satellite System (GNSS). Utilizing a constellation ofat least 24 medium Earth orbit satellites that transmit precise radiosignals, the system enables a GPS receiver to determine its location,speed and direction. The GPS has become a widely used aid to navigationworldwide, and a useful tool for map-making, land surveying, commerce,and scientific uses. GPS also provides a precise time reference used inmany applications including scientific study of earthquakes, andsynchronization of telecommunications networks.

Proceeding to 920, wireless triangulation or other wireless detectionlocation techniques may be employed. In these examples, wireless phonesby proximity to base stations and other cell towers can provide means todetect location of a given device. This may include geometric or othercalculations to triangulate and determine a given location. At 930,local proximity sensors may be employed to detect a user's location.This can include accelerometers, laser-based detectors, optical sensors,motion detectors, sound or acoustic detectors, camera or video detectorsand so forth that are situated with a given location and indicate auser's presence at the location. As can be appreciated, substantiallyany type of device or sensor 930 can be employed to detect a user'slocation at a given area. Upon detection by the local sensor 930,information can be presented via local output display or audio output orvia transmissions to a mobile or hand held device maintained by theuser. Thus, it is to be appreciated that combinations of wired orwireless technologies can be employed to detect location andsubsequently communicate information to the user based on the detectedlocation. For example, local sensors associated with an area could bewired to a centralized location for detecting a user's presence withinthe area. After presence has then been detected, location informationcould be wirelessly transmitted from the centralized server to theuser's mobile device. As can be appreciated, various combinations ofwireless and/or wireless configurations can be provided.

FIG. 10 illustrates an exemplary process 1000 for receiving dynamic databased on detected location. While, for purposes of simplicity ofexplanation, the process is shown and described as a series or number ofacts, it is to be understood and appreciated that the subject processesare not limited by the order of acts, as some acts may, in accordancewith the subject processes, occur in different orders and/orconcurrently with other acts from that shown and described herein. Forexample, those skilled in the art will understand and appreciate that amethodology could alternatively be represented as a series ofinterrelated states or events, such as in a state diagram. Moreover, notall illustrated acts may be required to implement a methodology inaccordance with the subject processes described herein.

Proceeding to 1010 of the process 1000, data is associated with adatabase or databases. These can include local data stores that houseinformation for a given location or can be tied into global databasesthat can be accessed off the Internet, public network, or broadbandnetwork for example. Data stored in the databases can includepredetermined information associated with a given location and can betagged as belonging to a given location. Along with predeterminedlocation information, bumper information can be provided along withdynamic data generated form actual users that have visited a respectivelocation. At 1020, position devices are employed to detect a givenuser's location. Such devices could include local proximity detectorssuch as sound or laser detection or include more sophisticated detectionsuch as GPS detection or wireless triangulation techniques.

At 1030, a determination is made as to whether or not a user has beendetected within a given location. If a user has not been detected, theprocess proceeds back to 1020 and monitors for future user presence tothe area. If a user has been detected at 1030, the process proceeds to1040. At 1040, information is provided to the user based on the locationdetection at 1030. Depending on how the detected user's profile is setup can control how and what information is actually pushed to the user.As noted above, such information can include previous data generated bythe user who have visited the detected location. Such information can beprovide by a local device or display that remains at the location or canbe pushed to a mobile or hand held device for example.

In order to provide a context for the various aspects of the disclosedsubject matter, FIGS. 11 and 12 as well as the following discussion areintended to provide a brief, general description of a suitableenvironment in which the various aspects of the disclosed subject mattermay be implemented. While the subject matter has been described above inthe general context of computer-executable instructions of a computerprogram that runs on a computer and/or computers, those skilled in theart will recognize that the invention also may be implemented incombination with other program modules. Generally, program modulesinclude routines, programs, components, data structures, etc. thatperforms particular tasks and/or implements particular abstract datatypes. Moreover, those skilled in the art will appreciate that theinventive methods may be practiced with other computer systemconfigurations, including single-processor or multiprocessor computersystems, mini-computing devices, mainframe computers, as well aspersonal computers, hand-held computing devices (e.g., personal digitalassistant (PDA), phone, watch . . . ), microprocessor based orprogrammable consumer or industrial electronics, and the like. Theillustrated aspects may also be practiced in distributed computingenvironments where tasks are performed by remote processing devices thatare linked through a communications network. However, some, if not allaspects of the invention can be practiced on stand-alone computers. In adistributed computing environment, program modules may be located inboth local and remote memory storage devices.

With reference to FIG. 11, an exemplary environment 1110 forimplementing various aspects described herein includes a computer 1112.The computer 1112 includes a processing unit 1114, a system memory 1116,and a system bus 1118. The system bus 1118 couple system componentsincluding, but not limited to, the system memory 1116 to the processingunit 1114. The processing unit 1114 can be any of various availableprocessors. Dual microprocessors and other multiprocessor architecturesalso can be employed as the processing unit 1114.

The system bus 1118 can be any of several types of bus structure(s)including the memory bus or memory controller, a peripheral bus orexternal bus, and/or a local bus using any variety of available busarchitectures including, but not limited to, 11-bit bus, IndustrialStandard Architecture (ISA), Micro-Channel Architecture (MSA), ExtendedISA (EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB),Peripheral Component Interconnect (PCI), Universal Serial Bus (USB),Advanced Graphics Port (AGP), Personal Computer Memory CardInternational Association bus (PCMCIA), and Small Computer SystemsInterface (SCSI).

The system memory 1116 includes volatile memory 1120 and nonvolatilememory 1122. The basic input/output system (BIOS), containing the basicroutines to transfer information between elements within the computer1112, such as during start-up, is stored in nonvolatile memory 1122. Byway of illustration, and not limitation, nonvolatile memory 1122 caninclude read only memory (ROM), programmable ROM (PROM), electricallyprogrammable ROM (EPROM), electrically erasable ROM (EEPROM), or flashmemory. Volatile memory 1120 includes random access memory (RAM), whichacts as external cache memory. By way of illustration and notlimitation, RAM is available in many forms such as synchronous RAM(SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rateSDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), anddirect Rambus RAM (DRRAM).

Computer 1112 also includes removable/non-removable,volatile/nonvolatile computer storage media. FIG. 11 illustrates, forexample a disk storage 1124. Disk storage 1124 includes, but is notlimited to, devices like a magnetic disk drive, floppy disk drive, tapedrive, Jaz drive, Zip drive, LS-100 drive, flash memory card, or memorystick. In addition, disk storage 1124 can include storage mediaseparately or in combination with other storage media including, but notlimited to, an optical disk drive such as a compact disk ROM device(CD-ROM), CD recordable drive (CD-R Drive), CD rewritable drive (CD-RWDrive) or a digital versatile disk ROM drive (DVD-ROM). To facilitateconnection of the disk storage devices 1124 to the system bus 1118, aremovable or non-removable interface is typically used such as interface1126.

It is to be appreciated that FIG. 11 describes software that acts as anintermediary between users and the basic computer resources described insuitable operating environment 1110. Such software includes an operatingsystem 1128. Operating system 1128, which can be stored on disk storage1124, acts to control and allocate resources of the computer system1112. System applications 1130 take advantage of the management ofresources by operating system 1128 through program modules 1132 andprogram data 1134 stored either in system memory 1116 or on disk storage1124. It is to be appreciated that various components described hereincan be implemented with various operating systems or combinations ofoperating systems.

A user enters commands or information into the computer 1112 throughinput device(s) 1136. Input devices 1136 include, but are not limitedto, a pointing device such as a mouse, trackball, stylus, touch pad,keyboard, microphone, joystick, game pad, satellite dish, scanner, TVtuner card, digital camera, digital video camera, web camera, and thelike. These and other input devices connect to the processing unit 1114through the system bus 1118 via interface port(s) 1138. Interfaceport(s) 1138 include, for example, a serial port, a parallel port, agame port, and a universal serial bus (USB). Output device(s) 1140 usesome of the same type of ports as input device(s) 1136. Thus, forexample, a USB port may be used to provide input to computer 1112 and tooutput information from computer 1112 to an output device 1140. Outputadapter 1142 is provided to illustrate that there are some outputdevices 1140 like monitors, speakers, and printers, among other outputdevices 1140 that require special adapters. The output adapters 1142include, by way of illustration and not limitation, video and soundcards that provide a means of connection between the output device 1140and the system bus 1118. It should be noted that other devices and/orsystems of devices provide both input and output capabilities such asremote computer(s) 1144.

Computer 1112 can operate in a networked environment using logicalconnections to one or more remote computers, such as remote computer(s)1144. The remote computer(s) 1144 can be a personal computer, a server,a router, a network PC, a workstation, a microprocessor based appliance,a peer device or other common network node and the like, and typicallyincludes many or all of the elements described relative to computer1112. For purposes of brevity, only a memory storage device 1146 isillustrated with remote computer(s) 1144. Remote computer(s) 1144 islogically connected to computer 1112 through a network interface 1148and then physically connected via communication connection 1150. Networkinterface 1148 encompasses communication networks such as local-areanetworks (LAN) and widearea networks (WAN). LAN technologies includeFiber Distributed Data Interface (FDDI), Copper Distributed DataInterface (CDDI), Ethernet/IEEE 802.3, Token Ring/IEEE 802.5 and thelike. WAN technologies include, but are not limited to, point-to-pointlinks, circuit switching networks like Integrated Services DigitalNetworks (ISDN) and variations thereon, packet switching networks, andDigital Subscriber Lines (DSL).

Communication connection(s) 1150 refers to the hardware/softwareemployed to connect the network interface 1148 to the bus 1118. Whilecommunication connection 1150 is shown for illustrative clarity insidecomputer 1112, it can also be external to computer 1112. Thehardware/software necessary for connection to the network interface 1148includes, for exemplary purposes only, internal and externaltechnologies such as, modems including regular telephone grade modems,cable modems and DSL modems, ISDN adapters, and Ethernet cards.

FIG. 12 is a schematic block diagram of a sample-computing environment1200 that can be employed. The system 1200 includes one or moreclient(s) 1210. The client(s) 1210 can be hardware and/or software(e.g., threads, processes, computing devices). The system 1200 alsoincludes one or more server(s) 1230. The server(s) 1230 can also behardware and/or software (e.g., threads, processes, computing devices).The servers 1230 can house threads to perform transformations byemploying the components described herein, for example. One possiblecommunication between a client 1210 and a server 1230 may be in the formof a data packet adapted to be transmitted between two or more computerprocesses. The system 1200 includes a communication framework 1250 thatcan be employed to facilitate communications between the client(s) 1210and the server(s) 1230. The client(s) 1210 are operably connected to oneor more client data store(s) 1260 that can be employed to storeinformation local to the client(s) 1210. Similarly, the server(s) 1230are operably connected to one or more server data store(s) 1240 that canbe employed to store information local to the servers 1230.

What has been described above includes various exemplary aspects. It is,of course, not possible to describe every conceivable combination ofcomponents or methodologies for purposes of describing these aspects,but one of ordinary skill in the art may recognize that many furthercombinations and permutations are possible. Accordingly, the aspectsdescribed herein are intended to embrace all such alterations,modifications and variations that fall within the spirit and scope ofthe appended claims. Furthermore, to the extent that the term “includes”is used in either the detailed description or the claims, such term isintended to be inclusive in a manner similar to the term “comprising” as“comprising” is interpreted when employed as a transitional word in aclaim.

What is claimed is:
 1. A method performed by a server computing device,the method comprising: receiving, at the server computing device from amobile wireless device, data captured by the mobile wireless device,wherein a user uses the mobile wireless device; receiving, at the servercomputing device, information that specifies a location of the mobilewireless device; receiving, at the server computing device, informationthat specifies a location of a disparate wireless device, wherein adisparate user uses the disparate mobile wireless device; selectinglocation relevant data for the user of the mobile wireless device, thelocation relevant data for the user of the mobile wireless device beingselected by the server computing device from a database, the locationrelevant data for the user of the mobile wireless device being selectedbased on: the location of the mobile wireless device being withinproximity of the location of the disparate mobile wireless device; andthe data received from the mobile wireless device; wherein the locationrelevant data for the user comprises personal information provided bythe disparate user, the personal information provided by the disparateuser comprises at least identity information of the disparate user; andsending the location relevant data for the user to the mobile wirelessdevice from the server computing device.
 2. The method of claim 1,further comprising: determining to send the location relevant data forthe user to the mobile wireless device from the server computing devicewhen the location of the mobile wireless device is within proximity ofthe location of the disparate mobile wireless device.
 3. The method ofclaim 1, further comprising: determining to send the location relevantdata for the user to the mobile wireless device from the servercomputing device during a time period specified for the user of themobile wireless device.
 4. The method of claim 1, wherein the locationrelevant data for the user further comprises image data provided by thedisparate user.
 5. The method of claim 1, wherein the location relevantdata for the user further comprises mood data provided by the disparateuser.
 6. The method of claim 1, further comprising: receiving feedbackdata from the mobile wireless device specifying an experience of theuser; and updating the location relevant data in the database based onthe feedback data.
 7. The method of claim 1, further comprising: causingthe user of the mobile wireless device to share a rating of anexperience; and receiving feedback data from the mobile wireless devicespecifying the rating of the experience.
 8. The method of claim 1, thelocation relevant data for the user of the mobile wireless devicefurther being selected based on a user profile of the user of the mobilecomputing device.
 9. The method of claim 1, the location relevant datafor the user of the mobile wireless device further being selected basedon a user profile of the disparate user of the disparate mobilecomputing device.
 10. The method of claim 1, selecting the locationrelevant data for the user of the mobile wireless device furthercomprises matching a profile of the user and a profile of the disparateuser.
 11. The method of claim 1, further comprising: selecting disparatelocation relevant data for the disparate user of the disparate mobilewireless device, the disparate location relevant data for the disparateuser of the disparate mobile wireless device being selected by theserver computing device from the database, the disparate locationrelevant data for the disparate user of the disparate mobile wirelessdevice being selected based on: the location of the mobile wirelessdevice being within proximity of the location of the disparate mobilewireless device; and the data received from the mobile wireless device;wherein the disparate location relevant data for the user comprisespersonal information provided by the user, the personal informationprovided by the user comprises at least identity information of theuser; and sending the disparate location relevant data for the disparateuser to the disparate mobile wireless device from the server computingdevice.
 12. The method of claim 1, wherein the location relevant datafor the user comprises prior user experience data, the prior userexperience data being previously received from at least one differingmobile wireless device other than the mobile wireless device or thedisparate mobile wireless device.
 13. The method of claim 1, wherein theidentity information of the disparate user comprises a name of thedisparate user.
 14. A server computing system, comprising: a processor;and memory that comprises computer-executable instructions that, whenexecuted by the processor, cause the processor to perform actsincluding: responsive to receipt of data from a mobile wireless device,selecting location relevant data for a user of a mobile wireless device,the location relevant data for the user of the mobile wireless devicebeing selected from a database, the location relevant data for the userof the mobile wireless device being selected based on: a location of themobile wireless device being with proximity of a location of a disparatemobile wireless device; and the data received from the mobile wirelessdevice; wherein the location relevant data for the user comprisespersonal information provided by the disparate user, the personalinformation provided by the disparate user comprises at least identityinformation of the disparate user; and sending the location relevantdata for the user to the mobile wireless device.
 15. The servercomputing system of claim 14, the memory further comprisescomputer-executable instructions that, when executed by the processor,cause the processor to perform acts including: determining to send thelocation relevant data for the user to the mobile wireless device whenthe location of the mobile wireless device is within proximity of thelocation of the disparate mobile wireless device.
 16. The servercomputing system of claim 14, wherein the location relevant data for theuser further comprises image data provided by the disparate user. 17.The server computing system of claim 14, the location relevant data forthe user of the mobile wireless device further being selected based on auser profile of the user of the mobile computing device and a userprofile of the disparate user of the disparate mobile computing device.18. The server computing system of claim 14, the memory furthercomprises computer-executable instructions that, when executed by theprocessor, cause the processor to perform acts including: causing theuser of the mobile wireless device to share a rating of an experience;and receiving feedback data from the mobile wireless device specifyingthe rating of the experience.
 19. The server computing system of claim14, wherein the identity information of the disparate user comprises aname of the disparate user.
 20. A mobile wireless device of a user,comprising: a processor; and memory that comprises computer-executableinstructions that, when executed by the processor, cause the processorto perform acts including: transmitting, to a server computing device,data captured by the mobile wireless device; responsive to transmittingthe data captured by the mobile wireless device, receiving locationrelevant data for the user of the mobile wireless device, wherein: thelocation relevant data for the user of the mobile wireless device isreceived when a location of the mobile wireless device is withinproximity of a location of a disparate mobile wireless device; adisparate user uses the disparate mobile wireless device; the locationrelevant data for the user comprises personal information provided bythe disparate user; and the personal information provided by thedisparate user comprises at least identity information of the disparateuser; and displaying the location relevant data.